#ifndef BIDWINDOW_H
#define BIDWINDOW_H

#include <QDialog>
#include <QVector>

// 定义电价电量数据结构
struct PriceQuantity {
    double price;    // 电价
    double quantity; // 电量
};

// 定义用户类型枚举
enum UserType {
    SUPPLIER,  // 供电端
    CONSUMER   // 用户端
};

namespace Ui {
class BidWindow;
}

class BidWindow : public QDialog
{
    Q_OBJECT

public:
    explicit BidWindow(UserType type, QWidget *parent = nullptr);
    ~BidWindow();
    
    // 获取排序后的竞价数据
    QVector<PriceQuantity> getSortedData() const;

private slots:
    void on_submitButton_clicked();

private:
    Ui::BidWindow *ui;
    UserType userType;  // 用户类型
    QVector<PriceQuantity> sortedData;  // 排序后的数据
    
    // 验证并收集输入的数据
    bool collectAndValidateData(QVector<PriceQuantity> &data);
};

#endif // BIDWINDOW_H
